refactor track filter.
authortsteven4 <tsteven4@gmail.com>
Sun, 6 Jan 2019 20:12:28 +0000 (13:12 -0700)
committertsteven4 <tsteven4@gmail.com>
Sun, 6 Jan 2019 20:12:28 +0000 (13:12 -0700)
commit3816808308bb78b41538bd66cdad925502270fba
tree483060fec3aecea3971f7eb613698d05b75ef2ae
parentc04ca896f1bfe6ab248398a862fff2867d706245
refactor track filter.

user visible changes:
Previously it was possible to cause a segmentation fault (due to a double delete)
if all the tracks were filtered out by the stop and start options.
This has been corrected.

Previously UTC time was used with the title option for split operations,
but local time was used with the title option for the pack operations.
Now UTC time is always used with the title option.

Previously the split and sdistance options allowed an option value
consisting of only the units.  This was undocumented.  Now both a number
and the units are required.

Previously the split option documentation stated that units of seconds
would be used if none were specified, however the units were actually required.
The documenation is updated to reflect historical and current usage.

Previously the split and sdistance options allowed the units to precede or
follow the quantity.  The documentation stated the units must follow the
quantity.  Now the units must follow the quantity.

Previously synthesized speeds ignored the fractional part of the track point times,
now the fractional part of the track point times are used in the speed calculation.

refactoring changes:
time_t is replaced where possible by gpsbabel::DateTime or QDateTime.

option value parsing is done with QRegularExpression.

some integer types were converted to bool types.

test cases are expanded for better coverage.
reference/track/trackfilter-move-d.gpx [new file with mode: 0644]
reference/track/trackfilter-move-h.gpx [new file with mode: 0644]
reference/track/trackfilter-move-m.gpx [new file with mode: 0644]
reference/track/trackfilter-move-s.gpx [new file with mode: 0644]
reference/track/trackfilter-move.gpx [deleted file]
reference/track/utm_subsecond_track.csv [new file with mode: 0644]
reference/track/utm_subsecond_track~csv.csv [new file with mode: 0644]
testo.d/track.test
trackfilter.cc
trackfilter.h
xmldoc/filters/options/track-split.xml